A data transmission technology exists which is called “Fibre Channel” (FC), and this technology has been around since the early 1990s. This FC technology is made up of both electrical specifications and a protocol specification called FCP (Fibre Channel Protocol) which define the packaging of messages that control the operation and encapsulate commands, data, responses, and other messages. A technical committee called T11, which is a committee within INCITS (the Inter National Committee for Information Technology Standards), is responsible for all the international standards dealing with Fibre Channel. INCITS is accredited by, and operates under rules approved by, the American National Standards Institute (ANSI). In 2009 the T11 technical committee defined a new standard (accepted by INCITS in 2010) called FCoE (Fibre Channel over Ethernet). The primary reference document for the FCoE standard can be found at the T11 website and is known as “FIBRE CHANNEL BACKBONE 5 (FC-BB-5) rev. 2.00 (document T11/09-056v5). This FC-BB-5 standard has been approved by ANSI and published on May 2010 as INCITS 462:2010. This FC-BB-5 standard defined how Fibre Channel Protocols (FCP) could flow over a special Ethernet Network which is defined as a “Lossless Ethernet” (but called herein just “Ethernet”). The Ethernet frames that carried the FCP were called FCoE frames. In order to handle these new kinds of frames and protocols, a structure was defined for a new type of device called a Fibre Channel Forwarder (FCF). This device (FCF) was a combination of a Fibre Channel Switch and Ethernet ports (sometimes including an Ethernet switch). The FCF was able to convert FCoE frames to traditional FC frames and vice versa. There was also a structure defined for a new type of device called a Converged Network Adapter (CNA). This device was a combination of a normal Ethernet Network Adapter and a Fibre Channel Adapter.
The FCF was required in order to establish logical connections between the end point devices (e.g. systems and storage controllers). The FCF was also required in order to pass messages between the end point devices. That is, the FCF required messages (commands, data, responses, etc.) to flow through the FC parts of the FCF.
There is a capability within FC that permits ports to directly connect to each other and bypass the FC Switch itself. This capability was used as part of FC Loop configurations, and for a Switchless connection between the ports (i.e. Point-to-point or direct FC wire interconnects).
Within FCP are two important concepts for this discussion, one is the establishment of the Logical/Physical link from the System Adapter to the FC Switch (or directly wired to the peer System Adapter), and the other is the establishment of the logical End-To-End connection/path from one adapter through the FC Switch to the other adapter (or directly via a FC wire to the peer Adapter). The (Logical) link establishment is accomplished in FC Switched Fabrics by each endpoint “Logging” into a FC Switch and making their identities known to the switch (and other devices). In a direct wired connection one of FC Adapters Logs directly into the other. These logins are done with a set of protocols known as the FLOGI (Fabric Login) and FLOGI LS_ACC (Fabric Login Link Services Accept called herein, FLOGI ACC) which are used in a process that establishes a logical link to the FC Switch or directly to a peer FC Adapter. The End-To-End logical connection/path is established via a set of protocols known as PLOGI (Port Login) and PLOGI LS_ACC (Port Login Link Services Accept called herein, PLOGI ACC). (The PLOGI process is required even if the End Points are directly connected.) Sometime after the completion of these login processes, the Upper Layer Protocol (ULP) can send its messages (commands, data, responses, etc.). An example of an ULP is SCSI (Small Computer System Interconnect) which is a storage Input/output (I/O) protocol and is one of the traditional ULPs carried by Fibre Channel.
The actual FC protocol which defines the connection requests and the accepting protocol for connection establishment directly between End nodes is defined in the T11 Draft Standard which can be found at the T11 Web site www.t11.org and is known as Fibre Channel Link Services-2 (FC-LS-2) Rev 2.12 (T11/09-260v2), Project 2103-D. And that draft standard is included herein by reference. This Invention specification refers to that draft standard as the “FC-LS-2” draft Standard (or just as FC-LS-2).
The FCoE FC-BB-5 standard, as mentioned above, has defined how the Fibre Channel Protocol (FCP) can operate within an Ethernet environment; as part of this new environment the Ethernet enabled FC Switch is called an FCF (Fibre Channel Forwarder) and the End Adapters are called CNAs (Converged Network Adapters). They are called CNAs because they can not only handle the normal Ethernet Frames (that carry messages for normal communication), but also carry FCP messages. Therefore, a single adapter and port could carry both the FCP protocol (in FCoE frames) and other Ethernet protocols, which are all converged into a single adapter called a CNA. (Refer to FIG. 2—Overview of an FCoE Converged Network Adapter.)
In a Real FC network of devices, the Adapter is often called the ENode (for End Node) and the element within the ENode that controls the connection point is called the N_Port (for eNd node Port), and the connection point in the FC Switch is called the F_Port (for Fabric Port). Since within FCoE the physical Ethernet link could be carrying many different logical links, the links between the CNAs and the FCFs are called Virtual links; the N_Ports and F_Port functions are called VN_Ports and VF_Ports (where the V stands for Virtual).
In FCoE the ENode (see FIG. 2—204 and FIG. 3—307) is the entire FCoE/FC part of the adapter that does not include the Ethernet NIC (Refer to FIG. 2—201 and FIG. 3—301). (Note: This invention specification will refer to the combination of the FCoE_LEP (Link End Point) (304 in FIG. 3) and the corresponding VN_Port (305 in FIG. 3) as just the VN_Port.)
In order for FC packets to flow on an Ethernet network they must be encapsulated in Ethernet frames. That means the source and destination 48 bit Ethernet media access control (MAC) address of the ports have to be known and placed into the address fields of the Ethernet Frames. These encapsulated FC packets are known as FCoE Frames (Refer to FIG. 4—FC's Encapsulation in Ethernet which includes the Source MAC Address—402, and the Destination MAC Address—403). Therefore, in an FCF environment, the FCF must advertise its own MAC addresses to ENodes and also dynamically build & assign a MAC address (for the VN_Port) that is made up of a FC port identifier known as the “N_Port_ID”, and an FCoE identifier known as an FC-MAP. (Refer to FC-BB-5 Standard for the detail layout of the FC-MAP value.) Both of these identifiers are 24 bits long and when concatenated together make up the assigned 48 bit MAC address of the VN_Port. This is called a Fabric Provided MAC Address (FPMA).
As part of the FC-BB-5 FCoE specification is a sub-protocol called FIP (FCoE Initiation Protocol). (Refer to FIG. 5 FIP Message Encapsulation in Ethernet, which includes the Source MAC Address—502, and the Destination MAC Address—503.) FIP was created in order to discover the environment, and devices that are part of an FCoE Fabric.
It is important to understand that even though the FC standards did permit ENodes to connect directly to other ENodes, the FCoE standard (FC-BB-5) did not permit it (neither via a point to point Ethernet wire, nor via an Ethernet switched network that did not include an FCF). (Refer to FIG. 1c; and note the Link 13 that cannot be used by the FC-BB-5 standardized FCoE. Also refer to FIG. 1d and note that the internal path within the Ethernet Switch (A) 56, from Link 52 to Link 57, can also not be used by devices which followed the FC-BB-5 standard for FCoE.)